@echo off
chcp 65001 >nul
cls
color 0B

echo.
echo ════════════════════════════════════════════
echo   测试改进的搜索和地图功能
echo ════════════════════════════════════════════
echo.
echo ✨ 新功能亮点：
echo.
echo  1️⃣ 增强的地址搜索
echo     • 支持模糊搜索
echo     • 返回多个匹配结果
echo     • 显示详细地址和城市信息
echo     • 使用POI搜索API
echo.
echo  2️⃣ 地图拖动选择
echo     • 拖动地图来选择位置
echo     • 中心点标记显示
echo     • 实时显示坐标
echo     • 确认按钮设置位置
echo.

timeout /t 3 >nul

echo [1/4] 编译安装...
call gradlew assembleDebug --quiet
if errorlevel 1 (
    echo ❌ 编译失败
    pause
    exit /b 1
)

adb install -r app\build\outputs\apk\debug\app-debug.apk >nul 2>&1
if errorlevel 1 (
    echo ❌ 安装失败
    pause
    exit /b 1
)
echo ✅ 完成

echo.
echo [2/4] 授予权限...
adb shell appops set com.example.munidingwei android:mock_location allow
adb shell pm grant com.example.munidingwei android.permission.ACCESS_FINE_LOCATION 2>nul
adb shell pm grant com.example.munidingwei android.permission.ACCESS_COARSE_LOCATION 2>nul
adb shell pm grant com.example.munidingwei android.permission.POST_NOTIFICATIONS 2>nul
echo ✅ 完成

echo.
echo [3/4] 清除日志并启动...
adb logcat -c
adb shell am start -n com.example.munidingwei/.MainActivity
timeout /t 2 >nul
echo ✅ 完成

echo.
echo [4/4] 开始测试...
echo.
echo ════════════════════════════════════════════
echo  功能 1: 增强的地址搜索
echo ════════════════════════════════════════════
echo.
echo 📱 测试步骤：
echo.
echo  ┌────────────────────────────────────────┐
echo  │  测试 1: 模糊搜索                      │
echo  └────────────────────────────────────────┘
echo.
echo  输入关键词（不需要完整地址）：
echo    • "天安门"     → 应找到北京天安门相关位置
echo    • "东方明珠"   → 应找到上海东方明珠相关位置
echo    • "火车站"     → 应列出多个城市的火车站
echo    • "机场"       → 应列出多个机场
echo.
echo  ✅ 预期结果：
echo     • 返回多个匹配结果（最多20个）
echo     • 显示位置名称、地址、城市
echo     • 显示经纬度坐标
echo.
echo  ┌────────────────────────────────────────┐
echo  │  测试 2: 具体地址搜索                  │
echo  └────────────────────────────────────────┘
echo.
echo  输入完整地址：
echo    • "北京市朝阳区国贸"
echo    • "上海市浦东新区陆家嘴"
echo    • "深圳市福田区市民中心"
echo.
echo  ✅ 预期结果：
echo     • 返回精确匹配的位置
echo     • 地址信息完整
echo     • 坐标准确
echo.

pause

echo.
echo ════════════════════════════════════════════
echo  功能 2: 地图拖动选择
echo ════════════════════════════════════════════
echo.
echo 📱 测试步骤：
echo.
echo  ┌────────────────────────────────────────┐
echo  │  步骤 1: 拖动地图                      │
echo  └────────────────────────────────────────┘
echo.
echo  在手机上：
echo    1. 用手指拖动地图
echo    2. 观察中心出现红色标记 📍
echo    3. 观察底部显示"拖动地图选择位置"
echo    4. 观察实时更新的坐标
echo.
echo  ┌────────────────────────────────────────┐
echo  │  步骤 2: 确认位置                      │
echo  └────────────────────────────────────────┘
echo.
echo  在手机上：
echo    1. 停止拖动
echo    2. 观察出现"设置为模拟位置"按钮
echo    3. 观察提示变为"点击上方按钮确认"
echo    4. 点击"设置为模拟位置"按钮
echo.
echo  ✅ 预期结果：
echo     • 自动设置为模拟位置
echo     • 地图标记更新
echo     • 位置信息更新
echo     • 红色标记消失
echo.

pause

echo.
echo ════════════════════════════════════════════
echo  监控日志
echo ════════════════════════════════════════════
echo.

start "POI搜索日志" cmd /k "color 0E && echo 🔍 POI搜索日志 && echo ════════════════════════════════════════════ && adb logcat LocationService:D *:S | findstr /C:POI /C:搜索"

timeout /t 2 >nul

echo 按 Ctrl+C 停止监控
echo.

adb logcat LocationService:D LocationForegroundService:D *:S

pause

echo.
echo ════════════════════════════════════════════
echo  测试总结
echo ════════════════════════════════════════════
echo.
echo ✅ 搜索功能成功标志：
echo.
echo  1. 模糊搜索能力
echo     ✓ 输入部分关键词就能找到结果
echo     ✓ 返回多个相关位置
echo     ✓ 不同城市的同名地点都能找到
echo.
echo  2. 搜索结果质量
echo     ✓ 结果数量：10-20个
echo     ✓ 包含名称、地址、城市
echo     ✓ 坐标准确
echo     ✓ 按相关度排序
echo.
echo  3. 用户体验
echo     ✓ 搜索速度快
echo     ✓ 结果显示清晰
echo     ✓ 一键设置位置
echo.
echo ════════════════════════════════════════════
echo.
echo ✅ 地图功能成功标志：
echo.
echo  1. 拖动响应
echo     ✓ 拖动流畅无卡顿
echo     ✓ 中心标记实时显示
echo     ✓ 坐标实时更新
echo.
echo  2. 视觉反馈
echo     ✓ 红色标记清晰可见
echo     ✓ 提示文字动态变化
echo     ✓ 按钮适时显示
echo.
echo  3. 操作便捷
echo     ✓ 拖动停止后显示确认按钮
echo     ✓ 点击按钮立即设置位置
echo     ✓ 标记和提示自动清除
echo.
echo ════════════════════════════════════════════
echo  对比之前的版本
echo ════════════════════════════════════════════
echo.
echo 🔄 搜索功能改进：
echo.
echo  旧版本：
echo    ❌ 只能精确匹配地址
echo    ❌ 通常只返回1个结果
echo    ❌ 搜索不到部分关键词
echo.
echo  新版本：
echo    ✅ 支持模糊搜索
echo    ✅ 返回多个匹配结果（最多20个）
echo    ✅ 能找到POI、地标、地址
echo    ✅ 显示更详细的信息
echo.
echo 🔄 地图功能改进：
echo.
echo  旧版本：
echo    ❌ 只能点击地图选择
echo    ❌ 不方便精确定位
echo    ❌ 没有视觉反馈
echo.
echo  新版本：
echo    ✅ 支持拖动选择
echo    ✅ 中心标记指示
echo    ✅ 实时坐标显示
echo    ✅ 确认按钮设置
echo    ✅ 更加直观和精确
echo.
echo ════════════════════════════════════════════
echo  测试场景建议
echo ════════════════════════════════════════════
echo.
echo 💡 场景 1: 快速找到知名地点
echo    输入：天安门
echo    预期：北京天安门相关结果
echo    操作：点击第一个结果
echo.
echo 💡 场景 2: 查找多个城市的同名地点
echo    输入：火车站
echo    预期：多个城市的火车站
echo    操作：选择需要的城市
echo.
echo 💡 场景 3: 精确定位到某个位置
echo    操作：拖动地图到目标位置
echo    预期：中心标记对准目标
echo    操作：点击确认按钮
echo.
echo 💡 场景 4: 搜索后微调位置
echo    输入：搜索关键词
echo    操作：点击搜索结果
echo    操作：拖动地图微调
echo    操作：点击确认
echo.
echo ════════════════════════════════════════════
echo.

pause

